約 4,235,901 件
https://w.atwiki.jp/javamock/pages/26.html
long Javaにおいてlongはプリミティブ型の1つです。 longはメモリ領域を64ビット確保します。 longは符号付き整数を扱うので、2の63乗(9223372036854775808)より、値の範囲は-9223372036854775808~9223372036854775807となります。 10桁以上の数値を扱う場合longを使います。 数値リテラルのデフォルトはint型のため、longのデータにはlまたはLを指定しなくてはいけません。 long 使用例 1 LongSample1.java class LongSample1 { public static void main(String[] args) { long longMax = 9223372036854775807L; long longMin = -9223372036854775808L; System.out.println("longMax " + longMax); System.out.println("longMin " + longMin); } } 実行結果 C \java javac LongSample1.java C \java java LongSample1 longMax 9223372036854775807 longMin -9223372036854775808 long 値範囲を超えた場合 1 LongSample2.java class LongSample2 { public static void main(String[] args) { long longMax = 9223372036854775808L; long longMin = -9223372036854775809L; System.out.println("longMax " + longMax); System.out.println("longMin " + longMin); } } コンパイル結果 C \java javac LongSample2.java LongSample2.java 5 整数 9223372036854775808 が大き過ぎます。 long longMax = 9223372036854775808L; ^ LongSample2.java 6 整数 -9223372036854775809 が大き過ぎます。 long longMin = -9223372036854775809L; ^ エラー 2 個 以上のようにコンパイルエラーが起こります。 long 値範囲を超えた場合 2 LongSample3.java class LongSample { public static void main(String[] args) { long longMax = 9223372036854775807L; long longMin = -9223372036854775808L; System.out.println("longMax - longMin " + (longMax - longMin)); } } 実行結果 C \java javac LongSample.java C \java java LongSample longMax - longMin -1 上記プログラムは本来なら9223372036854775807-(-9223372036854775808)で longの値範囲を超えてしまいエラーになりそうですが、longの値は循環するそうです。 循環するので上記計算は 9223372036854775807-(-9223372036854775808) ↓ 9223372036854775807+9223372036854775808 ↓ 9223372036854775808はlong型の範囲を超えているので超えた分が循環し-9223372036854775808になる 9223372036854775807-9223372036854775808 ↓ -1 となることがわかります。
https://w.atwiki.jp/chapati4it/pages/123.html
ruby/サンプル/Ruby1.8 FasterCsvでCSVファイルの読み書き+ソート サンプルソース # Ruby1.8+FasterCsv # FasterCsvでCSVファイルの読み書き+ソート require rubygems require fastercsv # 構造体Memberを作成 Member = Struct.new("Member", name, age) # Member構造体の配列作製 ary = Array.new ary Member.new("ちゃぱてぃ", 12) ary Member.new("ぶるーべれー", 13) ary Member.new("ゴードン", 12) ary Member.new("パレット", 13) ary Member.new("ミハエル", 12) ary Member.new("イチロー", 11) ary Member.new("スジャータ", 11) ary Member.new("マキシム", 11) puts "CSV出力開始" # Member構造体の配列を標準出力に出力 # CSVファイルを開く。書き込み、ダブルクオーテーション囲み FasterCSV.open("faster2.csv", "w", { force_quotes = true}) do |csv| for row in ary # Member構造体を一行ずつCSV出力 csv row end end puts "CSV出力終了" # 配列をクリア ary.clear puts "CSV読込開始" # CSVファイルを読み込み一行ずつ処理をする # 読み込む時は{ force_quotes = true}がなくても大丈夫です FasterCSV.foreach("faster2.csv") do |row| member = Member.new member.name = row[0] member.age = row[1].to_i ary.push member end puts "CSV読込終了" puts "配列ソート開始" ary = ary.sort{|a, b| if a.age != b.age # 年齢を比較 a.age = b.age else # 年齢が同じ場合名前を比較 a.name = b.name end } # 項目1つだけのソートならもっと簡単、以下のコメントを外すと年齢だけでソートします # ary = ary.sort{|a, b| # a.age = b.age # } puts "配列ソート終了" # ソート後の配列をCSVに出力します puts "CSV出力開始(ソート後)" FasterCSV.open("faster2_2.csv", "w", { force_quotes = true}) do |csv| for row in ary csv row end end puts "CSV出力終了(ソート後)" 実行結果のCSVファイル faster2.csv "ちゃぱてぃ","12" "ぶるーべれー","13" "ゴードン","12" "パレット","13" "ミハエル","12" "イチロー","11" "スジャータ","11" "マキシム","11" ソート前のCSV出力結果です 実行結果のCSVファイル faster2_2.csv "イチロー","11" "スジャータ","11" "マキシム","11" "ちゃぱてぃ","12" "ゴードン","12" "ミハエル","12" "ぶるーべれー","13" "パレット","13" ソート後の出力なので、2列目の年齢と、1列目の名前でソートされています。 ソート部分だけ抜き取り puts "配列ソート開始" ary = ary.sort{|a, b| if a.age != b.age # 年齢を比較 a.age = b.age else # 年齢が同じ場合名前を比較 a.name = b.name end } # 項目1つだけのソートならもっと簡単、以下のコメントを外すと年齢だけでソートします # ary = ary.sort{|a, b| # a.age = b.age # } puts "配列ソート終了" Rubyは構造体を詰め込んだ配列のソートも、とても簡単に作れてすごいと思いました。 = はRubyの大小比較演算子で、1,0,-1のいずれかに判定されます コメント 名前
https://w.atwiki.jp/riscster/pages/17.html
何もありません
https://w.atwiki.jp/n-3104/pages/12.html
前提 特徴 とりあえず使ってみるiBATIS SQL Maps チュートリアル For SQL Maps Version 2.0 February 18, 2006 ibatis-2.3.0.677.zipに付属のsimple_example トランザクション iBATIS-SqlMaps-2_ja.pdf Abator概要 Eclipseプラグインインストール手順 使い方 前提 ibatis-2.3.0.677.zip j2sdk1.4.2_11 Microsoft SQL Server 2000 Eclipse SDK バージョン 3.1.1 Abator code generator for iBATIS 1.0.0 特徴 SQL文を記述するO/Rマッピングフレームワーク。参照系SQLの検索結果とJavaBeansのマッピングを設定ファイルで行うことが出来きる。SQLを直接記述できるためチューニングが容易であるが、特定のDBに依存してしまう。 SQL文を外部ファイルで管理できる。 動的SQL用の独自の構文をサポートしている。 検索結果のJavaBeansのキャッシュ機能がある。 あるBeanのプロパティのBeanについてもまとめて検索できる。この際の方法は以下の2通り。遅延ローディング join とりあえず使ってみる iBATIS SQL Maps チュートリアル For SQL Maps Version 2.0 February 18, 2006 iBATISのサイトで配布されている「iBATIS-SqlMaps-2-Tutorial_ja.pdf」を参考にとりあえず動かしてみようとした。だが、チュートリアルの時点で以下の点で誤植(?)があった。 クラス名は MyAppSqlConfig だが使用例では MyAppSqlMapConfig で、Mapが増えている。 MyAppSqlConfig の resource の値が com/ibatis/example/sqlMap-config.xml となっているが、それまで紹介されたものは examples/sqlmap/maps/SqlMapConfigExample.xml である。 しかも、SQLServer2000の場合は、JDBCドライバのコネクションURLに SelectMethod=Cursor を追加する必要があり、これに気付かず1時間近く嵌ってしまった。まぁ、これもiBATIS-SqlMaps-2_ja.pdfに明記されてはいたが。 http //support.microsoft.com/default.aspx?scid=kb%3Ben-us%3B313181 そして、setBirthDate(null)にするとエラーとなってしまう。newPerson.setBirthDate(new java.sql.Date(new Date().getTime()))とかすればエラーにはならなかったが。 Person newPerson = new Person(); newPerson.setId(12); // you would normally get the ID from a sequence or custom table // newPerson.setBirthDate(null); newPerson.setBirthDate(new java.sql.Date(new Date().getTime())); null を指定できるようにするには、xmlファイルにおいてjdbcTypeを指定する必要がある。前述のガイドでも触れられているが、null値を指定する場合はjdbcTypeを明示的に指定しないとエラーになる場合があるらしい。具体的にはPerson.xmlのinsertPersonにおいてbirthDateにjdbcTypeとしてDATEを追加すればよい。 #birthDate# → #birthDate DATE# ibatis-2.3.0.677.zipに付属のsimple_example チュートリアルがうまく動かなかったので、zipファイルに付属している使用例を使ってみようとしたが、Account.xmlの insertAccount で values の前に ) がついていなかった。。 トランザクション SqlMapClient+startTransaction をしなければ、オートコミットの挙動になった。以下のソースでstartTransactionメソッドを呼ばなければ、insertについてもコミットされていた SqlMapClient sqlMap = MyAppSqlMapConfig.getSqlMapInstance(); sqlMap.startTransaction(); // トランザクションの開始 Person person = new Person(); ... sqlMap.delete ("deletePerson", person); sqlMap.commitTransaction(); // この時点で一旦コミット sqlMap.insert("insertPerson", person); sqlMap.endTransaction(); // insertについてはロールバックされる また、dataSourceのJDBC.DefaultAutoCommitプロパティの値はstartTransactionでトランザクションを開始した場合には有効であるが、開始していない場合は無視された。 transactionManager type="JDBC" dataSource type="SIMPLE" property name="JDBC.Driver" value="${driver}"/ property name="JDBC.ConnectionURL" value="${url}"/ property name="JDBC.Username" value="${username}"/ property name="JDBC.Password" value="${password}"/ property name="JDBC.DefaultAutoCommit" value="false"/ /dataSource /transactionManager iBATIS-SqlMaps-2_ja.pdf 短いが、非常に良くまとまっている。不明点があれば参照すべきガイドである。 Abator 概要 iBATIS用の設定ファイルとソースコードを自動生成してくれるツール。Eclipse用のプラグインも存在する。 Eclipseプラグイン インストール手順 http //ibatis.apache.org/abator.html を参照。更新アクセス先サイトを追加するだけで簡単に追加できる。 使い方 新規メニューの中に "Abator For iBATIS Configuration File" が追加されるので、それをクリックすると abatorConfig.xml の雛形が生成される。この中身を適切に設定すれば自動生成できる。 abatorConfig.xml abatorConfiguration abatorContext jdbcConnection driverClass="com.microsoft.jdbc.sqlserver.SQLServerDriver" connectionURL="jdbc microsoft sqlserver //localhost 1433;databaseName=test;SelectMethod=Cursor" userId="???" password="???" classPathEntry location="C /workspace/iBatis/msbase.jar" / classPathEntry location="C /workspace/iBatis/mssqlserver.jar" / classPathEntry location="C /workspace/iBatis/msutil.jar" / /jdbcConnection javaModelGenerator targetPackage="hoge.bean" targetProject="iBatis/src" / sqlMapGenerator targetPackage="hoge.map" targetProject="iBatis/src" / daoGenerator type="IBATIS" targetPackage="hoge.dao" targetProject="iBatis/src" / table tableName="PERSON"/ /abatorContext /abatorConfiguration ポイントは以下の通り。細かい情報は http //ibatis.apache.org/docs/tools/abator/ を参照。 classPathEntryは絶対パスが無難 targetProjectはEclipseのプロジェクト名+ソースフォルダ名 tableにschema属性をつけたらうまく動かなかった。 また、生成されたDAOは iBATIS DAO framework を前提としているためコンパイルエラーになる。iBATISは 2.3 から DAO framework 廃止し、Spring framework に移行することを推奨しているが、Abatorはまだ対応していないようだ。
https://w.atwiki.jp/ce00582/pages/3577.html
game0405 (1)プログラム http //www15.atwiki.jp/ce00582/pages/3578.html (2)コメント key 画像処理です。 (3)リンク http //discypus.jp/wiki/?Java%2F%B2%E8%C1%FC%BD%E8%CD%FD (4)作業記録 2月21日 ページ作成
https://w.atwiki.jp/shin-b/pages/19.html
Javaで使える正規表現 【半角英字】^[a-zA-Z]+$ abcdefghijklmnopqrstuvwxyz 【半角数字】^[0-9]+$ 0-9 【半角記号】^[ -/ -@\[-\`\{-\~]+$ 半角空白!"#$% ()*+-.,/ ; = ?@[\]^_`{|}~ 【半角英数字】^[a-zA-Z0-9]+$ abcdefghijklmnopqrstuvwxyz0123456789 【半角英数字記号】^[a-zA-Z0-9 -/ -@\[-\`\{-\~]+$ abcdefghijklmnopqrstuvwxyz0123456789半角空白!"#$% ()*+-.,/ ; = ?@[\]^_`{|}~ 【半角カタカナ】^[。-゚+]+$ ー。「」、・ヲァィゥェォャュョッタアイウエオカキクケコサシスセソミチツテトナニヌネノハヒフヘホマムメモヤユヨラリルレロワン゙゚ 【ひらがな】^[ぁ-ゞ]+$ あいうえおかきくけこさしすせそたちつてとなにぬねのはひふへほまみむめもやゆよらりるれろわをんぁぃぅぇぉっゃゅょがぎぐげござじずぜぞだぢづでどばびぶべぼぱぴぷぺぽゑヴ繧輔v繧吶z゛゜ゝゞ 【カタカナ】^[ァ-ヶ]+$ ァアィイゥウェエォオカガキギクグケゲコゴサザシジスズセゼソゾタダチヂッツヅテデトドナニヌネノハバパヒビピフブプヘベペホボポマミムメモャヤュユョヨラリルレロヮワヰヱヲンヴヵヶ 【漢字】^[一-龠]*$ 【全角文字】^[^ -~。-゚]+$ 半角以外としているのがポイント。 【桁数を指定(1桁から5桁)】^[a-zA-Z0-9]{5,10}$ 【5桁以上の繰り返し】^[a-zA-Z0-9]{5,}$ 【5桁以下の繰り返し】^[a-zA-Z0-9]{1,5}$ 【定数(trueもしくはfalse)】^true$|^false$
https://w.atwiki.jp/chicha_2525/pages/32.html
このページではJavaプログラミング配信のまとめをする。 配信に万が一参加できなかった場合でもある程度理解が進むような構成にしていく予定だ。 序章:ツールの導入と開発環境整備
https://w.atwiki.jp/javamock/pages/49.html
instanceof演算子 Javaにおいてinstanceof演算子は変数がクラスのインスタンスであるかを調べる演算子です。 クラスのインスタンスならtrueを返します。 instanceof演算子は以下の形式で扱います。 リファレンス型変数 instanceof クラス instance of a class クラスのインスタンス そのクラスに属する一つのオブジェクト。 らしいです instanceof演算子 使用例 1 InstanceOfOperatorSample1.java class InstanceOfOperatorSample1 { public static void main(String[] args) { Object object = "STRING"; System.out.println(object instanceof Byte); System.out.println(object instanceof String); } } 実行結果 C \java javac InstanceOfOperatorSample1.java C \java java InstanceOfOperatorSample1 false true 以上のようになります。
https://w.atwiki.jp/sevenlives/pages/567.html
public(Java) protected(Java)? デフォルト・アクセス(Java)? private(Java)?
https://w.atwiki.jp/wiki8_anson/pages/33.html
文字列を扱ってみる javaでは文字列を扱うためのStringクラスが事前に用意されています Stringクラスはint型の変数と同じように String str = "・・・・"; と宣言をして使うことができます ユーザーは内部でどのような処理が行われているかを知らなくとも 文字列を簡単に扱うことができます 文字列サンプル class Sample { public static void main(String args[]) { String str = "test"; System.out.println(str); } } ■戻る